//#include <stdio.h>
//int main()
//{
//	int num[10]={0};
//	int i=0,j=0,tmp,m,n,max,min;
//	for(i=6174;;i--)
//	{
//		tmp=i;
//		for(j=0;tmp;j++)
//		{
//			num[j]=tmp%10;
//			tmp/=10;
//		}
//		j--;
//		for(m=0;m<j-1;m++)
//		{
//			for(n=0;n<j-m-1;n++)
//			{
//				if(num[n]>num[n+1])
//				{
//					tmp=num[n];
//					num[n]=num[n+1];
//					num[n+1]=tmp;
//				}
//			}
//		}
//		for(m=0,max=0;m<j;m++)
//			max=max*10+num[m];
//		for(m=j-1,min=0;m>=0;m--)
//			min=min*10+num[m];
//		if((max-min)==i)
//		{
//			printf("%d",i);
//			break;
//		}
//	}
//	return 0;
//}


//#include <stdio.h>
//int main()
//{
//	int i,newone,oldone;
//	for(i=1;;i++)
//	{
//		newone=6+i*10;
//		if(i<10)
//			oldone=6*10+i;
//		else if(i<100)
//			oldone=6*100+i;
//		else if(i<1000)
//			oldone=6*1000+i;
//		
//		if(newone==4*oldone)
//			printf("%d",oldone);
//	}
//	return 0;
//}

//#include <stdio.h>
//int main()
//{
//	int num,i;
//	double max=0,min=100,tmp=0,all=0;
//	scanf("%d",&num);
//	for(i=0;i<num;i++)
//	{
//		scanf("%lf",&tmp);
//		all+=tmp;
//		if(max<tmp)
//			max=tmp;
//		if(min>tmp)
//			min=tmp;
//	}
//	printf("%.2lf",(all-max-min)/(num-2));
//	return 0;
//}

//#include <stdio.h>
//int main()
//{
//	char man;
//	for(man='A';man<='D';man++)
//	{
//		if((man!='A')+(man=='C')+(man=='D')+(man!='D')==3)
//			printf("%c",man);
//	}
//	return 0;
//}

#include <stdio.h>
int main()
{
	int m,n,i,tmp,max,min,Found;
	for(i=6174;i>0;i++)
	{
		int num[4]={0};
		num[0]=i%10;
		num[1]=i/10%10;
		num[2]=i/100%10;
		num[3]=i/1000;
		for(m=0;m<3;m++)
		{
			for(n=m+1;n<4;n++)
			{
				if(num[m]>num[n])
				{
					tmp=num[m];
					num[m]=num[n];
					num[n]=tmp;
				}
			}
		}
		if(i>999&&i==((num[3]*1000+num[2]*100+num[1]*10+num[0])-(num[0]*1000+num[1]*100+num[2]*10+num[3])))
			Found=i;
		else if(i>99&&i==((num[3]*100+num[2]*10+num[1])-(num[1]*100+num[2]*10+num[3])))
			Found=i;
		else if(i>9&&i==((num[3]*10+num[2])-(num[2]*10+num[3])))
			Found=i;	}
	printf("%d",Found);
	
	
	return 0;
}


